home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / bbs_util / rs001.zip / ROBOSYS.DOC < prev    next >
Text File  |  1996-04-19  |  11KB  |  267 lines

  1.  
  2.                                   ROBO-SYSOP
  3.  
  4.                                   Version 1.0
  5.  
  6.  
  7.  
  8.                           Written by Matthew Probert
  9.  
  10.  
  11.                          Published by Servile Software
  12.  
  13.  
  14.  
  15.  
  16. DESCRIPTION:
  17.  
  18. Robo-Sysop is a PC BBS intelligent interview door system for BBS which 
  19. generate a DOOR.SYS file - such as Remote Access for example. 
  20.  
  21. The purpose of Robo-Sysop is to provide an improved form of "new user" 
  22. questionnaire. Robo-Sysop's intelligence can be used to answer questions the 
  23. caller might have, and also to respond to stupid input, thereby screening 
  24. callers on your behalf. 
  25.  
  26. Robo-Sysop will make use of ANSI if the caller has it enabled, but if not will 
  27. work perfectly well in monochrome. No sysop adjustments are necessary. 
  28.  
  29. In practice Robo-Sys is rather complex to implement. It is essential that you 
  30. are familiar with the operation of your BBS software. Ideally, Robo-Sys should 
  31. be implemented as a door which is automatically executed by new callers on 
  32. their first call, and not subsequently. This can be implemented with Remote 
  33. Access through an autoexec questionnaire in the "top" menu which requires a 
  34. flag to be set for the function to be selectable. The questionnaire can then 
  35. run the external program (robosys.exe) and reset the callers flag to prevent 
  36. subsequent activation of the facility.
  37.  
  38. 2
  39. IN BRIEF:
  40.  
  41. Robo-Sysop is started from the command line with two required parameters and 
  42. two optional parameters. The first parameter is the name and path to your BBS 
  43. information file; DOOR.SYS. The second parameter is the path and name to the 
  44. configuration file to use for the interview. For example: 
  45.  
  46. ROBOSYS C:\RA\DOOR.SYS ROBOSYS.CFG [port][fossil]
  47.  
  48. IMPORTANT! Robo-Sysop will assume that COM1 = 03F8 IRQ 4, COM2 = 02E8 IRQ3, 
  49. COM3 = 03E8 IRQ4 and COM4 = 02E8 IRQ 3 These are the standard COM port 
  50. addresses and IRQ levels. 
  51.  
  52. You can optionaly specify a PORT:AAAA:X parameter, where AAAA is the base 
  53. address and X is the IRQ number associated with your COM port. You may also 
  54. specify PORT:F:P to force BBSChat to use a Fossil driver (assuming you have 
  55. one installed).
  56.  
  57. Robo-Sysop first displays the "opening" lines and then waits for the caller to 
  58. enter a reply. There after Robo-Sysop displays either the next "nomatch" 
  59. question phrase in sequence, or the next phrase connected with a matched 
  60. keyword in the callers input.
  61.  
  62. Keywords are matched on a first come first served basis. So specific keyword 
  63. phrases should occur at the start of the data file, with more general keywords 
  64. towards the end.
  65.  
  66. Should the user not make any keyboard entry for 5 minutes, or if the user's 
  67. allocated time expires Robo-Sysop will terminate and return to the BBS.
  68.  
  69. If the caller has ANSI enabled, Robo-Sysop will display the caller's prompts 
  70. and text in yellow, and the computers's in cyan. Otherwise both will be in 
  71. monochrome. Robo-Sysop detects and adjusts for the caller's ANSI settings 
  72. automatically. 
  73.  
  74. The results of the conversation are added to the end of the file "robo.log" in 
  75. the current directory.
  76.  
  77. LIMITS:
  78.  
  79. Opening lines           50
  80. No match questions      100
  81. Data blocks             200
  82. Aliases                 10 per data block
  83. Responses               20 per data block
  84.  
  85.  
  86. 3
  87. VARIABLES:
  88.  
  89. Within the reply text in the data file various variables may be included which 
  90. will be expanded during the conversation.
  91.  
  92. *BAUD*          Caller's connection speed
  93. *DELAY*         Pause for one second
  94. *END*           Force end of conversation, displaying "fed up message".
  95. *USER*          Caller's first name
  96. *CITY*          Caller's city
  97. *PHONE*         Caller's home phone number
  98. *LAST*          Last phrase (thread) output by the computer
  99. *TIME*          Current time is inserted
  100. *LF*            Line is split, carriage return and line feed inserted
  101. *NOASK*         Placed at the end of a matched output phrase it inhibits the
  102.                 output of the next "nomatch" question until after the caller
  103.                 has entered a reply.
  104. *SEC*           The caller's security level
  105. *SYSOP*         The sysop's name as recorded in door.sys
  106. *TIMEOFDAY*     MORNING, AFTERNOON or EVENING inserted ass appropriate
  107. *timeofday*     morning, afternoon or evening inserted ass appropriate
  108. *Keyword*       The matched keyword is inserted with first letter capitalised
  109. *Keyword*       The matched keyword is inserted with first letter capitalised
  110. *KEYWORD*       The matched ked keyword is inserted capitalised
  111. *keyword*       The matched keyword is inserted as it was typed by the user
  112.  
  113.  
  114. DATA FILE STRUCTURE:
  115.  
  116. ; optional comment lines
  117. N       Number of opening lines
  118. XXXX    Opening line 1
  119. XXXX    Opening line 2
  120. ; Then the "no match" questions
  121. NOMATCH
  122. N       Number of questions for non-matched caller input
  123. XXXX    Non-matched question #1
  124. XXXX    Non-matched question #2
  125. ; Finally the data blocks
  126. THREAD  The last phrase the computer output (maximum of 80 characters)
  127. KEYWORD Keyword or phrase to match with caller input
  128. *ALIAS* An alias key word for this section 
  129. N       Number of responses in this section
  130. XXXX    Response #1
  131. XXXX    Response #2 
  132.  
  133. Please refer to the supplied demonstration file 'ROBOSYS.DAT' for an example 
  134. of the data file in practice. 
  135.  
  136. Replies are what Robo-Sysop will display in response to user entered data and 
  137. are terminated by a carriage-return/line feed in the configuartion file. 
  138. Keywords and aliases MUST be in upper case Any line commening with ; is 
  139. ignored. Variables may be inserted in any response, except that the *keyword* 
  140. variable may not be used in either opening or non-matched responses 
  141.  
  142. 4
  143. When the user enters some text, Robo-Sysop searches the text for each keyword 
  144. and then associated aliases in turn. Keywords/aliases are matched if they 
  145. occur in the entered text. So it is important to include spaces around words 
  146. you want to match in full, for example: 
  147.  
  148. NO will match with NO, NOW, NOTHING etc
  149. but
  150. " NO " will only match with NO
  151.  
  152. Keywords/aliases may be multiple words, and quote marks are ignored, eg:
  153.  
  154. "WHAT IS THE TIME"
  155.  
  156. When Robo-Sysop matches a keyword/alias it ouputs the next recorded response 
  157. in sequential order. If there are no responses to be made, Robo-Sysop 
  158. terminates the interview. Even if a match is made with the callers input, the 
  159. next NOMATCH question is output in the same way. 
  160.  
  161. A conversation thread may be achieved by using subsets of keywords linked to 
  162. different threads. Any data block which includes a thread will only be 
  163. searched for a keyword match if the last output from the computer matches that 
  164. data block's thread. To make this easier to use, the data block will be 
  165. accepted if the last phrase the computer output is the same as the thread or 
  166. if the last ouput phrase commenced with the thread or if the data block has a 
  167. null thread. For example; 
  168.  
  169. Computer's ouptut was "Yes I do that often"
  170. This will match with the following data block threads;
  171.         "Yes"
  172.         "Yes I do"
  173.         "Yes I do that often"
  174.  
  175. but it will not match with
  176.         "Yes I am"
  177.  
  178. The results of the interview are recorded in a file 'ROBO.LOG' which is 
  179. appended with each new conversation, and resides in the current DOS directory. 
  180.  
  181.  
  182. BBS USAGE:
  183.  
  184. If you are using Remote Access as a BBS, you can configure a menu option to 
  185. call Robo-Sysop as an external program through a questionnaire. In this way 
  186. you can default new users to have a flag set on, and the questionnaire can 
  187. turn this flag off, so that only first-time callers are presented with the 
  188. Robo-Sysop. Remember to "auto-exec" activate the questionnaire from the "top" 
  189. menu only if the flag is set on.
  190.  
  191. Within the questionnaire you can use, for example:
  192.  
  193. EXEC *C /C C:\BAT\ROBO.BAT
  194. SET FLAG A1 OFF
  195.  
  196. 5
  197. Remote Access will then shell to DOS and execute the batch file "robo.bat" 
  198. which may look like:
  199.  
  200. @echo off
  201. cd \doors\robo
  202. robosys c:\ra\door.sys robosys.cfg
  203. cd \ra
  204. exit
  205.  
  206. It is not usually necessary to swap Remote Access out of memory to run 
  207. Robo-Sysop.
  208.  
  209. LOCAL MODE:
  210.  
  211. To run Robo-Sysop locally, change the COM port definition to COM0 in door.sys. 
  212. See the enclosed "test.bat" and "door.sys" files for an example. 
  213.  
  214.  
  215. 6
  216. CONFIGURATION FILE:
  217.  
  218. Robo-Sysop requires a configuration file. This is an ascii text file comprised 
  219. of several lines as follows: 
  220.  
  221. Format Description              Example
  222. ---------------------------------------
  223. xxxx   Data file name           robosys.dat
  224. xxxx   Computer's name          Robo Sysop
  225. nnnn   Delay on typing          50
  226. xxxx   Termination message      Thankyou for your cooperation
  227. xxxx   Dump message             Your input will be analysed later. Thankyou.
  228.  
  229. Please note: The "termination" and "dump" messages may not be longer than 999 
  230. characters. If they are they may crash the computer.
  231.  
  232. SYSOP KEYS ACTIVE WHEN A USER IS ONLINE:
  233.  
  234.              Function key       Purpose
  235.  
  236.                 F5              Shell to DOS
  237.                 F8              Return user to BBS
  238.                 F9              Toggle display on/off
  239.                 F10             Chat mode (use the ESCAPE key to exit)
  240.                 ALT-H           Toggle between different status lines
  241.  
  242. Alternately pressing the ALT-H key will bring up the next status line screen.  
  243. The first screen is a help screen, the second second screen shows your COM 
  244. port status. 
  245.  
  246. 7
  247.  
  248.                        DISTRIBUTION AND BETA TESTING BY
  249.  
  250.         ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  251.         ██▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▌████             ┌────────────────────────────┐
  252.         ██ C>_               ▌█▀██             │ COGNITIVE DEVELOPMENT BBS  │
  253.         ██                   ▌████             │                            │
  254.         ██                   ▌████             │ Providing a forum for A.I. │
  255.         ██                   ▌█o██             │ researchers and developers │
  256.         ██                   ▌█o██             ├────────────────────────────┤
  257.         ██▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▌█ ██             │ Basingstoke, Hampshire, UK │
  258.         ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀             │                            │
  259.   ████████████████████████▀▀▀▀▀▀▀▀▀▀▀▀▀▀█      │ 0256 50086 24 hours a day  │
  260.   ████████████████████████ ═══/═[──]═══ █      │                            │
  261.   ████████████████████████──────────────█      │   300 baud to 14,400 baud  │
  262.   █▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌████ ═══/═[──]═══ █      └────────────────────────────┘
  263.   ████████████████████████▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
  264.    ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  265.  
  266.  
  267.